草庐IT

c++ - C 和 C++ 中 WINAPI 的区别

全部标签

c - 如何从 C 程序调用可执行文件(使用 winapi)?

CreateProcess()出现了几次搜索谷歌....可以假设这是最安全、最有效的方法吗?如果是这样,我想使用被调用进程的输出。在继续C程序之前,我如何知道它已经完成?谢谢。 最佳答案 ShellExecute可用于创建进程,它是一种更方便的传递参数的方式。但如果您想使用流程的输出,那么CreateProcess可能是您最好的选择使用CreateProcess,您可以传递STARTUPINFO可用于将文件管道句柄传递给进程外的标准结构。CreateProcess将返回PROCESS_INFORMATION包含已创建进程的HANDL

c - WinAPI 命名管道位置

HANDLEpipe=CreateFile(L"\\\\.\\pipe\\my_pipe",GENERIC_READ,//onlyneedreadaccessFILE_SHARE_READ|FILE_SHARE_WRITE,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);我是winapi的新手,我想知道在硬盘上创建的“my_pipe”文件在哪里?我在二进制文件或源代码附近找不到它 最佳答案 Windows不遵循UNIX哲学“一切皆文件”,因此您使用内核API创建的命名对象不是文件,而是各

c - 在 C (Windows) 中创建新进程和子进程的区别

我想从代码本身创建一个新的exe进程,这样我就可以有两个并行进程。但是,我希望它们是独立的进程,而不是父子进程。有没有办法在C(Windows)中执行此操作? 最佳答案 在Windows中,processesdon'thaveparents.一些工具读取InheritedFromUniqueProcessId值,但这不会告诉您哪个进程启动您的进程。它只告诉您句柄和其他属性是从哪里继承的。然而在实践中,这个值通常设置为启动子进程的进程的ID。在Vista及更高版本上,您可以通过使用STARTUPINFOEX调用CreateProces

windows - Windows 编程中的 _spawnl 和 Createprocess(...) API 有什么区别?

Windows编程中的_spawnl(...)和Createprocess(...)API有什么区别?这些API在创建进程行为方面有何不同。 最佳答案 CreateProcess是用于创建进程的nativeAPI。spawnl是C运行时的一部分,具有类似POSIX的语义。它仅支持一小部分功能(提供命令行参数)并作为CreateProcess的包装器实现。与此同时,spawnl已被弃用,取而代之的是_spawnl。CreateProcess的自然操作模式与spawnl的P_NOWAIT模式相当,但具有附加功能(环境、标准处理安全性信息

c++ - WinAPI SetWindowLongPtr - 改变 windowProc

关于MSDN网站,我发现以下内容:CallingSetWindowLongPtrwiththeGWLP_WNDPROCindexcreatesasubclassofthewindowclassusedtocreatethewindow.Anapplicationcansubclassasystemclass,butshouldnotsubclassawindowclasscreatedbyanotherprocess.TheSetWindowLongPtrfunctioncreatesthewindowsubclassbychangingthewindowprocedureassoci

c++ - 查看winapi函数是否可用

在C++中是否可以检查函数是否可用?例如SetThreadPriority.如果它可用,我想调用它,如果不可用,我想简单地忽略它,因为它对我的应用程序并不重要。 最佳答案 您可以使用GetProcAddress功能。链接中的示例正是执行此类操作:它检查GetNativeSystemInfo是否可用,如果可用则调用它,否则调用GetSystemInfo函数。 关于c++-查看winapi函数是否可用,我们在StackOverflow上找到一个类似的问题: htt

c# - 将 C++ 或 C# 用于 Windows Kinect 应用程序之间是否存在任何不明显的区别? (例如性能、特性)

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭11年前。这只是偏好和熟悉程度的问题,还是语言会产生实际差异?

c++ - 创建带有精美细边框的文本字段。 Winapi

我是winapi和c++的新手,但我需要制作带有细边框和圆角的文本字段。我在winapi引用中找不到这种风格:http://msdn.microsoft.com/en-us/library/windows/desktop/ff700543(v=vs.85).aspx无论是简单的窗口样式还是扩展的。我发现的唯一合适的边界是WS_EX_CLIENTEDGE但这不是我需要的。这是显示当前和所需外观的图片:那么我应该怎么做才能做出这个花哨的边框呢? 最佳答案 这不是每个窗口样式的问题。“所需”窗口设置了所有默认样式。不同之处在于它以视觉风格

c# - 顶级窗口、子窗口、对话框(模式)窗口和非对话框(无模式)窗口之间有什么区别?

谁能告诉我如何区分它们?我很难理解顶级子窗口与对话框/非对话框窗口的区别因素是什么?顶层窗口可以是对话框/非对话框窗口吗?子窗口可以是对话框/非对话框窗口吗? 最佳答案 顶级窗体属于桌面,而子窗体属于另一个窗体;这意味着关闭或最小化拥有的表单也会影响子表单。模态窗体/对话框会阻塞调用线程,直到窗体关闭,而无模态窗体允许您在显示时与应用程序中的其他窗体进行交互。任何表单都可以是模态/非模态的,无论它是顶级表单还是子表单-但是模态对话框的默认行为由导致它们显示的表单拥有。 关于c#-顶级窗口

c++ - 使用 WINAPI 如何更改复选框按钮的值?

目前我在WM_CREATE中创建了一个复选框:hwndButtonPollFlag=CreateWindow(TEXT("BUTTON"),TEXT(sA.getMonitor(monitorSelected)->szDevice),WS_CHILD|WS_VISIBLE|SS_WHITERECT|BS_CHECKBOX,0,0,0,0,hwnd,(HMENU)IDB_PollFlag,hInstance,NULL);每当单击另一个按钮时,我试图更改它的值:if(sA.getScreenArray(monitorSelected)->getPollFlag()){SetWindowLo